package API.JDK8时间.Date类;

import java.time.Instant;
import java.time.ZoneId;
import java.time.ZonedDateTime;

public class ZoneDateTimeDemo {
    public static void main(String[] args) {


//        static ZoneDateTime now()  获取当前时间的ZoneDateTime对象
//        static ZoneDateTime ofXxx()  获取指定时间的ZoneDateTime对象
//        ZoneDateTime withXxx  修改时间系列的方法
//        ZoneDateTime minusXxx  减少时间系列的方法
//        ZoneDateTime plusXxx  增加时间系列的方法


        ZonedDateTime now = ZonedDateTime.now();//系统的时间
        System.out.println(now);


//        获取指定时间的ZoneDateTime对象
        ZonedDateTime zonedDateTime = ZonedDateTime.of(2023,10,1,11,12,12,0, ZoneId.of("Asia/Shanghai"));
        System.out.println(zonedDateTime);

//        通过instant+时间的方式指定获取时间对象(带有时区的时间)
        Instant instant = Instant.ofEpochMilli(0l);
        ZoneId zoneId = ZoneId.of("Asia/Shanghai");
        ZonedDateTime zonedDateTime1 = ZonedDateTime.ofInstant(instant, zoneId);
        System.out.println(zonedDateTime1);

//        修改时间系列的方法

        zonedDateTime1.withYear(2000);//可以修改年月日。。。
        ZonedDateTime zonedDateTime2 = zonedDateTime1.minusSeconds(1l);//减少时分秒，年月日。。。。
        System.out.println(zonedDateTime2);

    }
}
